Skip to content

[mono][interp] Allow passing vtypes with a single scalar field to nat…#79686

Merged
vargaz merged 1 commit into
dotnet:mainfrom
vargaz:interp-vtype
Dec 16, 2022
Merged

[mono][interp] Allow passing vtypes with a single scalar field to nat…#79686
vargaz merged 1 commit into
dotnet:mainfrom
vargaz:interp-vtype

Conversation

@vargaz

@vargaz vargaz commented Dec 14, 2022

Copy link
Copy Markdown
Contributor

…ive code using the faster code path.

This affects types like ObjectHandleOnStack which are passed to icalls.

@vargaz vargaz requested a review from BrzVlad as a code owner December 14, 2022 23:51
@ghost ghost assigned vargaz Dec 14, 2022
@ghost

ghost commented Dec 14, 2022

Copy link
Copy Markdown

Tagging subscribers to this area: @BrzVlad
See info in area-owners.md if you want to be subscribed.

Issue Details

…ive code using the faster code path.

This affects types like ObjectHandleOnStack which are passed to icalls.

Author: vargaz
Assignees: vargaz
Labels:

area-Codegen-Interpreter-mono

Milestone: -

@vargaz

vargaz commented Dec 14, 2022

Copy link
Copy Markdown
Contributor Author

This will hopefully fix some of the perf regressions in
#79607

Comment thread src/mono/mono/mini/interp/transform.c Outdated
@vargaz

vargaz commented Dec 15, 2022

Copy link
Copy Markdown
Contributor Author

On most platforms, passing scalar vtypes is done by value, so this should work. If it doesn't, we can ifdef it for the platforms where it works.

@vargaz

vargaz commented Dec 15, 2022

Copy link
Copy Markdown
Contributor Author

The interpreter test failures are relevant.

@BrzVlad

BrzVlad commented Dec 15, 2022

Copy link
Copy Markdown
Member

we should probably have consistency between the primitive types that are considered to be passable as a native int and the allowed types of the struct field.

…ive code using the faster code path.

This affects types like ObjectHandleOnStack which are passed to icalls.
@vargaz

vargaz commented Dec 16, 2022

Copy link
Copy Markdown
Contributor Author

Failures are unrelated

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants